sub Stage4
{
/*
CompileEnemyFromFile(csd~"stage4/Stage4Enemy01.txt");
CompileEnemyFromFile(csd~"stage4/Stage4Enemy02.txt");
CompileEnemyFromFile(csd~"stage4/Stage4Enemy03.txt");
CompileEnemyFromFile(csd~"stage4/Stage4Enemy04.txt");
CompileEnemyFromFile(csd~"stage4/Stage4Enemy05.txt");
CompileEnemyFromFile(csd~"stage4/Stage4Enemy06.txt");
CompileEnemyFromFile(csd~"stage4/Stage4Enemy07.txt");
CompileEnemyFromFile(csd~"stage4/Stage4Enemy08.txt");
*/
	DeleteMusic(BGM[6]);
	if(StagePhaseProgress!=3 || StagePractice==false)
	{
	PlayMusic(BGM[7]);
	}
	CreateEnemyFromFile(csd~"stage4/LoadEnemy.txt",0,0,0,0,0);
	wait(120);
if(StagePhaseProgress==0 || StagePractice==false)
{
	Stage4Unit1;
	wait(60);
	Stage4Unit2;
	wait(30);
	Stage4Unit3;
	wait(120);
	Stage4Unit4;
	wait(120);
	Stage4Unit4;
	Stage4Unit4a;
	wait(120);
	Stage4Unit4b;
	Stage4Unit4;
	wait(60);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy03.txt",GetCenterX-96,GetClipMinY-64,0.75,90,1);
	wait(30);
	Stage4Unit4a;
	wait(120);
	wait(60);
	Stage4Unit5;
	wait(30);
	Stage4Unit6;
	wait(90);
	wait(60);
	Stage4Unit7;
	wait(60);
	Stage4Unit9;
	wait(30);
	Stage4Unit8a;
	wait(60);
	Stage4Unit8b;
	wait(60);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy03.txt",GetCenterX+84,GetClipMinY-64,0.75,90,1);
	wait(30);
	Stage4Unit10;
	wait(270);
	Stage4Unit11;
	wait(120);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy08.txt",GetClipMinX-120,GetClipMinY+120,1.5,-5,1);
	wait(420);
	Stage4Unit12;
	wait(180);
	Stage4Unit13;
	wait(90);
	Stage4Unit14;
	wait(60);
	Stage4Unit15;
	wait(30);
	Stage4Unit17;
	wait(90);
	Stage4Unit16a;
	wait(60);
	Stage4Unit18;
	wait(60);
	Stage4Unit16a;
	Stage4Unit19;
	wait(60);
	Stage4Unit21;
	wait(60);
	Stage4Unit16b;
	Stage4Unit20;
	wait(120);
	Stage4Unit18;
	Stage4Unit16c;
	wait(30);
	Stage4Unit16d;
	wait(150);
	Stage4Unit22;
	wait(45);
	Stage4Unit23;
	wait(600);
}
if(StagePhaseProgress<=1 || StagePractice==false)
{
	SetCommonData("STAGE4MIDBOSS",true);
	SetCommonData("STAGE4MIDBOSSHAYAMAWASI",true);
	CreateEnemyBossFromFile(csd~"stage4/Stage4MidBoss.txt",GetClipMaxX-60,GetClipMinY-16,2,0,0);

	WaitForZeroEnemy;
	SetCommonData("STAGE4MIDBOSS",false);
	//BGStage4MidBossEnd;
	wait(60);
}
if(StagePhaseProgress<=2 || StagePractice==false)
{
	Stage4Unit24;
	wait(120);
	Stage4Unit25;
	wait(120);
	Stage4Unit26;
	wait(60);
	Stage4Unit27;
	wait(90);
	Stage4Unit28;
	wait(75);
	Stage4Unit29;
	wait(45);
	Stage4Unit30;
	Stage4Unit31;
	wait(120);
	Stage4Unit32;
	wait(165);
	Stage4Unit33;
	wait(90);
	Stage4Unit30;
	wait(90);
	Stage4Unit34;
	wait(90);
	Stage4Unit29;
	wait(60);
	Stage4Unit35;
	Stage4Unit36;
	wait(120);
	Stage4Unit37;
	Stage4Unit38;
	wait(120);
	Stage4Unit38;
	wait(90);
	Stage4Unit30;
	wait(60);
	Stage4Unit38;
	wait(120);
	Stage4Unit18;
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy03.txt",GetCenterX,GetClipMinY-64,0.75,90,1);
	wait(15);
	Stage4Unit21;
	wait(255);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy08.txt",GetClipMaxX+120,GetClipMinY+150,1.5,185,1);
	wait(420);
	Stage4Unit39;
	wait(150);
	Stage4Unit1;
	wait(60);
	Stage4Unit40;
	wait(135);
	Stage4Unit2;
	wait(90);
	Stage4Unit41;
	wait(120);
	wait(60);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy03.txt",GetCenterX+120,GetClipMinY-64,0.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy03.txt",GetCenterX-120,GetClipMinY-64,0.5,90,1);
	wait(60);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy03.txt",GetCenterX-0,GetClipMinY-64,0.5,90,1);
	wait(60);
	wait(60);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+60,GetClipMinY-64,0.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-60,GetClipMinY-64,0.5,90,1);
	wait(240);
	Stage4Unit42;
	wait(120);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy10.txt",GetCenterX,GetClipMinY-64,1.0,90,1);
	wait(150);
	Stage4Unit43;
	wait(540);
	FadeOutMusic(BGM[5],10);
	wait(120);
}
if(StagePhaseProgress<=3 || StagePractice==false)
{
	DeleteMusic(BGM[7]);
	PlayMusic(BGM[8]);
	wait(1);
	CreateEnemyBossFromFile(csd~"stage4/Stage4Boss.txt",GetClipMinX+60,GetClipMinY-16,2,0,0);
	WaitForZeroEnemy;
	SetCommonData("STAGE4BOSS",false);
	CreateEnemyFromFile(csd~"stage4/DeleteEnemy.txt",GetClipMinX-64,GetCenterY-48,2,90,1);
}

}

task Stage4Unit1
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-84,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-116,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-128,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-144,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-160,GetClipMinY-16,0,0,1);
}

task Stage4Unit2
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+84,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+116,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+128,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+144,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+160,GetClipMinY-16,0,0,1);
}

task Stage4Unit3
{

	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-120,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-30,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+120,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-140,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+140,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+30,GetClipMinY-16,1.5,90,1);
	wait(45);

}

task Stage4Unit4
{

let y=120;
	loop(4)
	{
		CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-200,GetClipMinY-20+y,1.5,15,1);
		CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+200,GetClipMinY-20+y,1.5,165,1);
		wait(30);
		y+=12;
	}

}

task Stage4Unit4a
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+48,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+80,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+112,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+144,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+64,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+96,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+128,GetClipMinY-16,0,0,1);
}

task Stage4Unit4b
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-48,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-80,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-112,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-144,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-64,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-96,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-128,GetClipMinY-16,0,0,1);
}

task Stage4Unit5
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMinX-16,GetClipMinY+60,0,0,-1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMinX-16,GetClipMinY+112,0,0,-1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMinX-16,GetClipMinY+160,0,0,-1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMinX-80,GetClipMinY+88,0,0,-1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMinX-80,GetClipMinY+136,0,0,-1);
}

task Stage4Unit6
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMaxX+32,GetClipMinY+60,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMaxX+32,GetClipMinY+112,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMaxX+32,GetClipMinY+160,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMaxX+96,GetClipMinY+88,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04.txt",GetClipMaxX+96,GetClipMinY+136,0,0,1);
}

task Stage4Unit7
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+120,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+30,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-60,GetClipMinY-16,1,90,1);
}

task Stage4Unit8a
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-64,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-112,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-160,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-88,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-136,GetClipMinY-16,0,0,1);
}

task Stage4Unit8b
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+64,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+112,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+160,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+88,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+136,GetClipMinY-16,0,0,1);
}

task Stage4Unit9
{
	SubUnit;
	loop(6)
	{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetClipMaxX+16,GetClipMinY+60,1,170,1);
	wait(45);
	}

	task SubUnit
	{
	wait(60);
	loop(6)
	{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetClipMinX-16,GetClipMinY+60,1,10,1);
	wait(45);
	}
	}
}

task Stage4Unit10
{

	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-50,GetClipMinY-16,1.5,0,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-140,GetClipMinY-16,1.5,0,1);
	wait(45);

	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-60,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-100,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-140,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-80,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-120,GetClipMinY-16,0,0,1);

}

task Stage4Unit11
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+128,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+160,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+116,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+144,GetClipMinY-16,0,0,1);
}

task Stage4Unit12
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-150,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-90,GetClipMinY-16,1,90,1);
	wait(30);

	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-30,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+30,GetClipMinY-16,1,90,1);
	wait(30);

	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+90,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+150,GetClipMinY-16,1,90,1);
}

task Stage4Unit13
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-60,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-90,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-120,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-150,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-75,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-115,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-135,GetClipMinY-16,0,0,1);
}

task Stage4Unit14
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+60,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+90,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+120,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+150,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+75,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+115,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+135,GetClipMinY-16,0,0,1);
}

task Stage4Unit15
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-140,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-100,GetClipMinY-16,1,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-120,GetClipMinY-16,1,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-140,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-100,GetClipMinY-16,1,90,1);
}

task Stage4Unit16a
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-50,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-0,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+50,GetClipMinY-16,0,0,1);
	wait(20);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-25,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+25,GetClipMinY-16,0,0,1);
}

task Stage4Unit16b
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-50-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-0-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+50-100,GetClipMinY-16,0,0,1);
	wait(20);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-25-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+25-100,GetClipMinY-16,0,0,1);
}

task Stage4Unit16c
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-50+100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-0+100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+50+100,GetClipMinY-16,0,0,1);
	wait(20);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-25+100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+25+100,GetClipMinY-16,0,0,1);
}

task Stage4Unit16d
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-50-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-0-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+50-100,GetClipMinY-16,0,0,1);
	wait(20);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-25-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+25-100,GetClipMinY-16,0,0,1);
}

task Stage4Unit17
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+160,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+100,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit18
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-140,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-90,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit19
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+160,GetClipMinY-16,1.5,90,1);
	//wait(20);
	//CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+80,GetClipMinY-16,1.5,90,1);
	wait(40);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+120,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit20
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-40,GetClipMinY-16,1.5,90,1);
	wait(20);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+40,GetClipMinY-16,1.5,90,1);
	wait(40);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit21
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+140,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+100,GetClipMinY-16,1,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+120,GetClipMinY-16,1,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+140,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+100,GetClipMinY-16,1,90,1);
}

task Stage4Unit22
{
	loop(5)
	{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX-150,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX-50,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX-125,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX-75,GetClipMinY-16,0,0,1);
	wait(15);
	}
}

task Stage4Unit23
{
	loop(5)
	{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX+150,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX+100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX+50,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX+125,GetClipMinY-16,0,0,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01a.txt",GetCenterX+75,GetClipMinY-16,0,0,1);
	wait(15);
	}
}


task Stage4Unit24
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX+30,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX+90,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX-30,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX-90,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX+120,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX+60,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX+0,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX-60,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07a.txt",GetCenterX-120,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+40,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-40,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit25
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04a.txt",GetCenterX+60,GetClipMinY-16,1.5,90,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04a.txt",GetCenterX-20,GetClipMinY-16,1.5,90,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04a.txt",GetCenterX-100,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04a.txt",GetCenterX-60,GetClipMinY-16,1.5,90,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04a.txt",GetCenterX+20,GetClipMinY-16,1.5,90,1);
	wait(15);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy04a.txt",GetCenterX+100,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit26
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-120,GetClipMinY-16,1.5,90,1);
	wait(60);
let y=60;
	loop(3)
	{
		CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-200,GetClipMinY-20+y,1.5,40,1);
		CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-200,GetClipMinY-65+y,1.5,40,1);
		wait(30);
		y+=24;
	}
}

task Stage4Unit27
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+80,GetClipMinY-16,1.5,90,1);
	wait(20);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+160,GetClipMinY-16,1.5,90,1);
	wait(40);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+120,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit28
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-70,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-110,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-150,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-90,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-130,GetClipMinY-16,0,0,1);
}

task Stage4Unit29
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+70,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+110,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+150,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+90,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX+130,GetClipMinY-16,0,0,1);
}

task Stage4Unit30
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-40,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-80,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-120,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-60,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-100,GetClipMinY-16,0,0,1);
}


task Stage4Unit31
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+120,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+60,GetClipMinY-16,1.5,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+0,GetClipMinY-16,1.5,90,1);
}

task Stage4Unit32
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-110,GetClipMinY-16,1.0,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-30,GetClipMinY-16,1.0,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+50,GetClipMinY-16,1.0,90,1);
}

task Stage4Unit33
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMinX-0,GetClipMinY+60,1.0,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMinX-60,GetClipMinY+120,1.0,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMinX-0,GetClipMinY+150,1.0,90,1);
}

task Stage4Unit34
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMaxX-0,GetClipMinY+60,1.0,90,-1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMaxX+60,GetClipMinY+120,1.0,90,-1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMaxX-0,GetClipMinY+150,1.0,90,-1);
}

task Stage4Unit35
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMaxX-0,GetClipMinY+60,1.0,90,-1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02a.txt",GetClipMaxX-0,GetClipMinY+150,1.0,90,-1);
}

task Stage4Unit36
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-40,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-80,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-120,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-60,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-100,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-40,GetClipMinY-16,0,0,1);
	wait(10);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy05.txt",GetCenterX-80,GetClipMinY-16,0,0,1);
}

task Stage4Unit37
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX-20,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+40,GetClipMinY-16,1.5,90,1);
	wait(60);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+20,GetClipMinY-16,1.5,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+80,GetClipMinY-16,1.5,90,1);
	wait(60);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+60,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+100,GetClipMinY-16,1.5,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy02.txt",GetCenterX+140,GetClipMinY-16,1.5,90,1);
	//wait(60);
	//CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+60,GetClipMinY-16,1.5,90,1);	
}

task Stage4Unit38
{

let y=80;
	loop(3)
	{
		CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-200,GetClipMinY-20+y,1.5,15,1);
		CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+200,GetClipMinY-45+y,1.5,165,1);
		wait(30);
		y+=12;
	}
}

task Stage4Unit39
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-140,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-70,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-0,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+70,GetClipMinY-16,1,90,1);
}


task Stage4Unit40
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+140,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX+70,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-0,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-70,GetClipMinY-16,1,90,1);
}

task Stage4Unit41
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy09.txt",GetCenterX+140,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy09.txt",GetCenterX+70,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy09.txt",GetCenterX-140,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy09.txt",GetCenterX-70,GetClipMinY-16,1,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy09.txt",GetCenterX+40,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy09.txt",GetCenterX-40,GetClipMinY-16,1,90,1);
	wait(45);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy06.txt",GetCenterX-0,GetClipMinY-16,1,90,1);
}

task Stage4Unit42
{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+120,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-60,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX+60,GetClipMinY-16,1,90,1);
	wait(30);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy01.txt",GetCenterX-120,GetClipMinY-16,1,90,1);
}

task Stage4Unit43
{
	loop(4)
	{
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+125,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+75,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX+25,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-25,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-75,GetClipMinY-16,1,90,1);
	CreateEnemyFromFile(csd~"stage4/Stage4Enemy07.txt",GetCenterX-125,GetClipMinY-16,1,90,1);
	wait(90);
	}

}